package com.yxhl.zoume.data.http.rest.repositoryimpl;

import com.yxhl.protobuf.BizOrderRequest;
import com.yxhl.protobuf.BizOrderResponse;
import com.yxhl.protobuf.MpvModelRequest;
import com.yxhl.protobuf.MpvModelResponse;
import com.yxhl.zoume.data.http.repository.car.OfficialCarRepository;
import com.yxhl.zoume.data.http.rest.param.officialcar.CancelOfficialCarOrderParam;
import com.yxhl.zoume.data.http.rest.repositoryimpl.base.BaseDataRepository;
import com.yxhl.zoume.data.http.rest.response.specialcar.CancelOrderResponse;

import javax.inject.Inject;

import rx.Observable;

/**
 * Created by sugarya on 16/8/22.
 */
public class OfficialCarDataRepository extends BaseDataRepository implements OfficialCarRepository {


    @Inject
    public OfficialCarDataRepository() {
    }

    @Override
    public Observable<MpvModelResponse> queryVehicleModel(MpvModelRequest request) {
        return mZouMeService.queryVehicleModel(request);
    }


    @Override
    public Observable<MpvModelResponse> queryOfficialCarPriceAndDistance(MpvModelRequest request) {
        return mZouMeService.queryPriceAndDistance(request);
    }

    @Override
    public Observable<MpvModelResponse> queryRentCarTime(MpvModelRequest request) {
        return mZouMeService.queryRentCarTime(request);
    }

    @Override
    public Observable<BizOrderResponse> createOfficialCarOrder(BizOrderRequest request) {
        return mZouMeService.createNewCarOrder(request);
    }

    @Override
    public Observable<CancelOrderResponse> cancelOfficialCarOrder(CancelOfficialCarOrderParam param) {
        return mZouMeService.cancelOfficialCarOrder(param);
    }
}
